1. Field of the Invention:
This invention relates to video display technology, and more particularly, to a method for use on an OSD-based (On-Screen Display) video display system, such as a VCD system, a super VCD (SVCD) system, or a DVD system, for the purpose of enhancing the resolution of cursor movement on the display screen of the video display system.
2. Description of Related Art:
FIG. I is a functional block diagram, schematically showing the basic system configuration of a conventional video display system 100, such as a VCD system, a super VCD system, or a DVD system. As shown, the video display system 100 includes a digital disc drive 102, a pointing device 108, and a display screen 106. The digital disc drive 102 typically includes an on-screen display (OSD) unit 104 which is capable of displaying the operating status of the overall video display system 100. The OSD unit 104 controls the display screen 106 in such a manner that the display screen 106 is partitioned into an array of blocks (hereinafter referred to as "OSD blocks" throughout this specification), with the rows and columns of these OSD blocks being encoded with ascending code numbers for addressibility to these OSD blocks.
One example of the screen partition scheme is depicted in FIG. 2. As shown, in this example, the display screen 106 represents a primary signal field of 240 horizontal lines by 352 pixels without pixel interpolation. The display screen 106 is partitioned in such a manner that each OSD block has a size of 16 lines by 16 pixels, so that the overall display area can be partitioned into a total of 15.times.22 OSD blocks, each being used for the display of a certain predesigned symbol (hereinafter referred to as "OSD symbol") therein. Each OSD symbol can be a character or any user-designed graphic pattern. Each of the OSD blocks is labeled with a specific code that allows software to address these OSD blocks for display of selected OSD symbols.
FIG. 3 is a functional block diagram schematically showing detailed inside architecture of the OSD unit 104 used in the video display system 100 of FIG. 1. As shown, the OSD unit 104 includes a microprocessor 302, a primary memory unit 304, a display memory unit 306, and an overlapping circuit 308. The primary memory unit 304 can be either ROM (read-only memory) or RAM (random-access memory), and is used to store a set of OSD symbols that can be selected for display on the display screen 106. During initialization, the microprocessor 302 retrieves the selected OSD symbols from the primary memory unit 304 and then transfers the retrieved OSD symbols to the display memory unit 306. The retrieved OSD symbols can be, for example, the English letters "A", "B", and "C". When display request is received, the overlapping circuit 308 then displays the OSD symbols "A", "B", and "C" along with a cursor mark "{character pullout}" on the display screen 106 as illustrated in FIG. 2. In the case of FIG. 2, for example, the three OSD symbols "A", "B", "C" and the cursor mark "{character pullout}" are respectively displayed in the OSD blocks at the addresses [column 3, row 2], [column 4, row 2], [column 5, row 2], and [column 5, row 3].
In the video display system 100, the provision of the pointing device 108, which can be either a mouse or a trackball, allows additional functionality to the video display system 100 so that the video display system 100 is capable of running video games or educational programs. One drawback to the foregoing video display system 100, however, is that the movement of the cursor would be zigzag-like and discontinuous due to the reason that the cursor can be displayed only from block to block on the display screen 106 and each block is quite large in size that makes the resolution of the cursor movement to be considerably low. This drawback is further depicted illustratively with reference to FIG. 4. Assume the display screen 106 is partitioned into 16.times.16 OSD blocks, with two of them indicated by the reference numerals 402, 404 in FIG. 4, and the dashed line indicates the intended route for cursor movement. When the user moves the cursor along the intended route, then the cursor will be displayed within the OSD block 402 at a first pointed position at the time t.sub.0, within the right-next OSD block 404 at a second pointed position at the time t.sub.1, and nevertheless within the same OSD block 404 at a third pointed position at the time t.sub.2. As a result, the cursor movement would proceed in a nearly zigzag and discontinuous manner along the intended route, which is quite visually unappealing.